Companies are increasingly collecting and processing data from different sources. Generating reports from different sources consumes time and personnel resources. Typically, users had to first independently execute the different programs to generate all of the data needed in a report. This may include executing a relational database program to query the database and store the results in a particular format; and then executing other programs, such as an Online Analytical Processing (OLAP) program and/or statistical program and then storing their respective results in the programs' designated formats. Through graphical user interfaces, the users copy and paste all or portions of the programs' results in a document for use in a report. Additional difficulties arise when the underlying data changes and the process must be repeated anew.
The present invention overcomes the aforementioned disadvantages as well as others by providing a computer-implemented system and method for generating at least one report from a plurality of data sources. The system and method include a data source specification to indicate the data to be retrieved from the data sources so that the report may be generated based upon the extracted data. A view specification indicates how the data is to be visually represented within the report. A report rendering engine causes the data to be retrieved from the data sources in accordance with the data source specification, and creates in accordance with the view specification a visual representation of the report based upon the retrieved data.